Digital signal processing is a specialized form of data processing in which digitally represented signals are subjected to rapid, mathematically intensive, repetitive operations where speed is of prime importance. Such operations are executed in a DSP that is specifically designed to execute mathematical algorithms. A DSP commonly includes an arithmetic logic unit (ALU) and a parallel multiplication unit for performing mathematical operations in a single cycle. A DSP may also be supported by both a data store and an instruction store that are accessed in parallel over separate busses to simultaneously transfer both data and instructions so as to avoid memory and bus bottlenecks.
Digital signal processors are used for functions requiring very fast manipulation of numbers, as opposed to data transfers, string operations, or data block handling. A DSP is commonly dedicated to a specific purpose made up of plural tasks. Examples of tasks include: a) Echo cancellation in modem applications; b) Finite impulse response and infinite impulse response filters with fixed coefficients; c) Adaptive filters with time-varying coefficients; and d) Fast Fourier transforms.
Heretofore, DSPs have been used for application specific, digital signal processing functions in which a given DSP is used for only one specific purpose. Plural DSPs have been connected in parallel, each performing a single related task. Two articles summarize the current state-of-the-art of DSPs, the articles being, "Real-time digital signal processing: a review of applications and technology", by A. G. Carr, Computing and Control Engineering Journal, March 1990, pages 77-80, and, "Recent Advances in DSP Systems", by H. M. Ahmed and R. B. Kline, IEEE Communications Magazine, May 1991, pages 32-45. Such articles note that programmable DSPs can be used with application specific hardware whereby a given DSP can be connected to perform a single, application specific digital signal processing function.
An article entitled "The NeXT Computer", by T. Thompson and N. Baran, BYTE Magazine, November 1988, pages 158-175, describes a personal computer having a general purpose DSP on a chip which can be programmed to tailor the chip for a specific purpose. Such system differs from the invention in the following ways. First, the DSP is tailored for a single function. Concurrent or multifunctions are not executed. Second, manual intervention appears to be needed to change over to a different application. Third, specific hardware adapters are required for each function.